package vcp.entity;

import java.io.Serializable;

import org.joda.time.DateTime;

import vcp.enums.SiteEnum;
import vcp.enums.SubscriptionType;
/**
 * <p>subscriptions history class</p>
 * @author VCP team
 *
 */
public class SubscriptionHistory implements Serializable
{

	/**
	 * 
	 */
	private static final long serialVersionUID = 2262913124271561560L;

	private boolean isCanceld;
	/**
	 * getter
	 * @return true if is cancelled
	 */
	public boolean isCanceld ()
	{
		return this.isCanceld;
	}
	/**
	 * setter
	 * @param isCanceld
	 */
	public void setCanceld ( boolean isCanceld )
	{
		this.isCanceld = isCanceld;
	}

	private int subscriptionID;
	/**
	 * getter
	 * @return subscription id
	 */
	public int getSubscriptionID ()
	{
		return this.subscriptionID;
	}
	/**
	 * setter
	 * @param subscriptionID
	 */
	public void setSubscriptionID ( int subscriptionID )
	{
		this.subscriptionID = subscriptionID;
	}

	private int customerID;
	/**
	 * getter
	 * @return customer ID
	 */
	public int getCustomerID ()
	{
		return this.customerID;
	}
	/**
	 * setter
	 * @param userID
	 */
	public void setCustomerID ( int userID )
	{
		this.customerID = userID;
	}

	private SiteEnum site;
	/**
	 * getter
	 * @return site
	 */
	public SiteEnum getSite ()
	{
		return this.site;
	}
	/**
	 * setter
	 * @param site
	 */
	public void setSite ( SiteEnum site )
	{
		this.site = site;
	}

	private DateTime startDate;
	/**
	 * getter
	 * @return start date
	 */
	public DateTime getStartDate ()
	{
		return this.startDate;
	}
	/**
	 * setter
	 * @param startDate
	 */
	public void setStartDate ( DateTime startDate )
	{
		this.startDate = startDate;
	}

	private DateTime leaveDate;
	/**
	 * getter
	 * @return leave date
	 */
	public DateTime getLeaveDate ()
	{
		return this.leaveDate;
	}
	/**
	 * setter
	 * @param estimatedLeaveDate
	 */
	public void setLeaveDate ( DateTime estimatedLeaveDate )
	{
		this.leaveDate = estimatedLeaveDate;
	}

	private DateTime endDate;
	/**
	 * getter
	 * @return end date
	 */
	public DateTime getEndDate ()
	{
		return this.endDate;
	}
	/**
	 * setter
	 * @param endDate
	 */
	public void setEndDate ( DateTime endDate )
	{
		this.endDate = endDate;
	}

	private DateTime arrivalDate;
	/**
	 * getter
	 * @return arrival date
	 */
	public DateTime getArrivalDate ()
	{
		return this.arrivalDate;
	}
	/**
	 * setter
	 * @param arrivalDate
	 */
	public void setArrivalDate ( DateTime arrivalDate )
	{
		this.arrivalDate = arrivalDate;
	}

	private SubscriptionType subscriptionType;
	/**
	 * getter
	 * @return subscription type
	 */
	public SubscriptionType getSubscriptionType ()
	{
		return this.subscriptionType;
	}
	/**
	 * setter
	 * @param subscriptionType
	 */
	public void setSubscriptionType ( SubscriptionType subscriptionType )
	{
		this.subscriptionType = subscriptionType;
	}

}
